إعداد خادوم وِب وخادوم FTP على Red Hat Enterprise Linux
الكلمات المفتاحية: خادوم وِب, خادوم FTP, RHEL, Red Hat Enterprise Linux, Apache, vsftpd, أمان الشبكات, إعدادات الشبكة, SELinux, جدار الحماية, خدمات لينكس
مقدمة
تُعدّ توزيعة Red Hat Enterprise Linux (RHEL) من أكثر أنظمة التشغيل استخدامًا في بيئات المؤسسات لما تتميز به من استقرار، دعم طويل الأمد، وأدوات متقدمة لإدارة البنية التحتية. ويُعتبر إعداد خادوم وِب (Web Server) وخادوم FTP (File Transfer Protocol Server) من العمليات الأساسية في إدارة خدمات الشبكات داخل بيئة تعتمد على RHEL. يُمكن استخدام خادوم الويب لاستضافة مواقع إلكترونية أو تطبيقات داخلية، بينما يُستخدم خادوم FTP لنقل الملفات بين الأنظمة أو لمشاركة البيانات داخل الشبكة.
في هذا المقال المطول، سيتم شرح الخطوات المفصلة لإعداد خادوم وِب باستخدام Apache HTTP Server، وخادوم FTP باستخدام vsftpd، مع مراعاة كافة جوانب الأمان، التحكم في الوصول، تكوين SELinux، إعداد جدار الحماية، وإدارة الخدمات بطريقة احترافية، وذلك وفقًا لأفضل الممارسات المعتمدة في مجال إدارة النظم والخوادم.
متطلبات النظام
قبل البدء في إعداد الخوادم، ينبغي التأكد من توافر بيئة نظام مناسبة تتضمن:
-
تثبيت نسخة Red Hat Enterprise Linux 8 أو 9.
-
حساب مستخدم يملك صلاحيات الجذر (root) أو مستخدم ضمن مجموعة sudoers.
-
اتصال مستقر بالشبكة.
-
إمكانية الوصول إلى مستودعات البرامج الرسمية (repositories) من Red Hat.
إعداد خادوم وِب Apache على RHEL
1. تثبيت حزمة Apache HTTP Server
Apache هو أشهر خادوم وِب مفتوح المصدر. لتثبيته على RHEL:
bashsudo dnf install httpd -y
بعد انتهاء التثبيت، يتم التحقق من وجود الخدمة:
bashsystemctl status httpd
2. تشغيل الخدمة وتفعيلها تلقائيًا
bashsudo systemctl start httpd
sudo systemctl enable httpd
3. إعداد جدار الحماية للسماح بحركة المرور عبر HTTP وHTTPS
bashsudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
4. التحقق من عمل الخادوم
يمكن فتح المتصفح على أي جهاز ضمن الشبكة وكتابة عنوان الـIP الخاص بالخادوم، أو تنفيذ:
bashcurl http://localhost
5. ملفات الإعداد
الملف الرئيسي لإعداد Apache:
swift/etc/httpd/conf/httpd.conf
وأي ملفات إضافية يمكن وضعها ضمن المجلد:
swift/etc/httpd/conf.d/
6. إعداد صفحات الويب
المجلد الافتراضي للموقع هو:
css/var/www/html/
يمكن وضع ملفات HTML أو PHP داخله بعد تعديل صلاحيات الملفات إذا لزم الأمر.
إعداد خادوم FTP باستخدام vsftpd
1. تثبيت الحزمة
vsftpd هو خادوم FTP آمن وسريع يدعم الاتصال المجهول والمستخدمين المحليين.
bashsudo dnf install vsftpd -y
2. بدء الخدمة وتفعيلها
bashsudo systemctl start vsftpd
sudo systemctl enable vsftpd
3. إعداد جدار الحماية للسماح بالاتصال
bashsudo firewall-cmd --permanent --add-service=ftp sudo firewall-cmd --reload
4. إعداد SELinux لدعم FTP
للسماح بتحميل الملفات عبر FTP عند تمكين SELinux:
bashsudo setsebool -P allow_ftpd_full_access 1
5. إعدادات ملف vsftpd.conf
الملف الأساسي:
bash/etc/vsftpd/vsftpd.conf
أهم التعديلات التي يُنصح بها:
confanonymous_enable=NO local_enable=YES write_enable=YES chroot_local_user=YES user_sub_token=$USER local_root=/home/$USER/ftp
ثم يتم إعادة تشغيل الخدمة:
bashsudo systemctl restart vsftpd
6. إعداد المستخدمين ومجلداتهم
لإنشاء مستخدم مخصص لـ FTP:
bashsudo adduser ftpuser sudo passwd ftpuser
إنشاء المجلد الرئيسي للـ FTP:
bashmkdir -p /home/ftpuser/ftp/files
chown -R ftpuser:ftpuser /home/ftpuser/ftp
chmod 750 /home/ftpuser/ftp
إدارة SELinux لخادوم الويب وFTP
RHEL تستخدم SELinux لتقييد الصلاحيات تلقائيًا. لضمان عمل الخوادم دون تعارض، يتم ضبط السياسات بالشكل التالي:
التحقق من حالة SELinux:
bashsestatus
إعطاء صلاحية Apache لقراءة مجلد معين:
bashchcon -R -t httpd_sys_content_t /var/www/html
السماح للـ Apache بتنفيذ السكربتات:
bashsetsebool -P httpd_execmem 1
استخدام شهادات SSL لخادوم Apache
لتأمين الاتصال بخادوم الويب باستخدام HTTPS:
1. تثبيت mod_ssl:
bashsudo dnf install mod_ssl
2. إنشاء شهادة SSL ذاتية التوقيع (لأغراض الاختبار):
bashsudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ -keyout /etc/pki/tls/private/httpd.key \ -out /etc/pki/tls/certs/httpd.crt
3. تعديل ملف الإعداد:
في /etc/httpd/conf.d/ssl.conf، يتم الإشارة إلى مسارات الشهادة والمفتاح.
جدول توضيحي لأهم الأوامر المستخدمة
| الوظيفة | الأمر المستخدم |
|---|---|
| تثبيت Apache | sudo dnf install httpd -y |
| تشغيل Apache | sudo systemctl start httpd |
| تفعيل Apache عند الإقلاع | sudo systemctl enable httpd |
| فتح منفذ HTTP في الجدار | sudo firewall-cmd --add-service=http --permanent |
| إعادة تحميل الجدار | sudo firewall-cmd --reload |
| تثبيت vsftpd | sudo dnf install vsftpd -y |
| تشغيل خدمة vsftpd | sudo systemctl start vsftpd |
| تعديل إعدادات SELinux | setsebool -P allow_ftpd_full_access 1 |
| إعداد صلاحيات المجلدات | chown -R user:user /path/to/ftp |
اعتبارات الأمان
عند إعداد أي خادوم على RHEL، ينبغي عدم إهمال الجوانب الأمنية، خاصة في بيئة الإنتاج:
-
إغلاق الخدمات غير الضرورية لتقليل سطح الهجوم.
-
تطبيق سياسات قوية لكلمات المرور، خصوصًا لمستخدمي FTP.
-
استخدام جدار حماية متقدم مثل
firewalldلإغلاق المنافذ غير المستخدمة. -
تشغيل تحديثات النظام بشكل منتظم لتجنب الثغرات الأمنية.
-
استخدام FTPS بدلاً من FTP العادي عند الحاجة لتأمين الاتصال.
إدارة الخوادم في بيئة الإنتاج
بمجرد إكمال إعداد الخوادم، يُفضل استخدام أدوات مراقبة وإدارة مثل:
-
Cockpit: واجهة ويب لإدارة الخوادم على RHEL.
-
Nagios/Zabbix: لمراقبة الأداء وتلقي التنبيهات.
-
Logwatch و journald: لمراجعة السجلات وتحليلها بانتظام.
الخلاصة الفنية
إعداد خادوم وِب وخادوم FTP على Red Hat Enterprise Linux يتطلب فهماً متقدماً لطريقة عمل النظام والخدمات المرتبطة به. سواء كان الاستخدام لغرض تطويري أو إنتاجي، فإن الالتزام بأفضل الممارسات الأمنية، وضبط الإعدادات بشكل دقيق، واعتماد السياسات المناسبة ضمن SELinux وجدار الحماية، كلها تمثل عوامل حاسمة لضمان الأداء العالي والاستقرار. ويُفضل توثيق كل خطوة في ملف إداري خاص بكل خادوم لضمان سهولة الصيانة مستقبلاً، وتفادي الأخطاء أو التعارضات في البيئات المعقدة.
المراجع:
-
Red Hat Documentation – https://access.redhat.com/documentation/
-
Apache HTTP Server Official Documentation – https://httpd.apache.org/docs/

